home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-13 / me_cd22.zip / DOC.ZIP / README < prev    next >
Text File  |  1992-04-27  |  7KB  |  192 lines

  1. -*-text-*-
  2.  
  3. The is the README for ME2.  It contains full source for:
  4.     ME2 (the Mutt Editor v2.2)
  5.     MC2 (the Mutt Compiler v2.1)
  6.     a Compute Server (v1.0)
  7.     various libraries
  8.     Mutt extensions to ME2
  9.  
  10. Released:
  11.   February 29, 1992 (beta)
  12.   April 12, 1992
  13.  
  14. This release is targeted at Unix and MS-DOS.  I've tried to write the
  15. code as portablly as possible (in C and ANSI C) so hopefully it should
  16. be "easy" to port to other platforms that support C.
  17.  
  18. This stuff is released as GNU Ware - use, share and enjoy.
  19.  
  20.  
  21.  
  22.                  What is ME2?
  23.                  ---- -- ----
  24.  
  25.    ME2 is a medium-small, portable, extendable Emacs' like editor that
  26. is known to compile and run on HP-UX (Series 800, 700 and 300), BSD Unix
  27. (Sun, Apollo, DEC, etc), IBM AIX, OSF/POSIX (HP and DEC) and
  28. MS-DOS/PC-DOS (IBM PCs and compatibles).  Standalone, ME2 is pretty
  29. mundane - you need to customize it to make full use of it.  A compiled
  30. language is provided for this as well as lots of example programs:  a C
  31. mode, paren matching, a visual towers of hanoi, incremental searching,
  32. programmers calculator, mark rings, multi file search (and replace)
  33. picture mode (from GNU Emacs), gomoku (from GNU Emacs) and lots more.
  34. Other features include the ability to have concurrent processes (such as
  35. make) running in a buffer (Unix only).
  36.  
  37.  
  38.  
  39.             How to Compile and Install ME2
  40.             --- -- ------- --- ------- ---
  41.  
  42. Compiling
  43. ----------
  44.  
  45. Edit util/os.h so it matches your OS.
  46. Edit mc2/mm.h so that it matches your OS.
  47. Edit me2/config.h so that it matches what you what ME2 to support.
  48. Edit me2/compile so that it matches your OS and config.h.
  49. Edit ./compile for the CFLAGS you want.
  50. Type "./compile" in this directory and it will compile all the
  51.   subdirectories.
  52.  
  53. Notes:
  54.   I've run the compile scripts (and tested the results) on:
  55.       HP-UX 8.0  series 300 (K&R "-O" and Ansi C "-Aa -O")
  56.       HP-UX 7.05 series 300 (K&R "-O")
  57.       HP-UX 7.0  series 800 (K&R "-O" and Ansi C "-Aa -O")
  58.       HP OSF/1 1.0 Operating System A.01.00 ("" - DON'T use -O)
  59.       Apollo 68k SR10.4 BSD (psudeo Ansi C "-O" and Ansi C "-O -Aansi").
  60.     Make sure to set DOMAIN_OS in util/os.h.
  61.     The compiles will complain (lots) about varargs and select.  You
  62.     can ignore these.  I'm pretty sure the varargs complaints are
  63.     groundless.  If you get tired of the messages, you can put
  64.     "-U__STDC__" in the compile flags.
  65.       Sun SparcStation 2, SunOS Release 4.1.1 ("-O")
  66.       IBM RS/6000, AIX Version 3.1 ("-O").  Make sure you use -lcurses
  67.     in me2/compile and AIX_OS in util/os.h.
  68.       DEC 3100 OSF/1 ("-O").  Not much testing done.
  69.       DECstation 5000/200 ULTRIX V4.2 ("-O").  You may need to set
  70.     FOPEN_BINARY (me2/config.h).  On this version of ULTRIX, "rb" is
  71.     OK.
  72.     They should run on other Unix boxes but I can't test everything.
  73.       Let me know if you find problems.
  74.  
  75.   Unixes that kinda work:
  76.     UNIX_System_V 4.1.0 V4ES i386 x86at (a 486 running a SYS V unix).
  77.       To get this to compile:
  78.         - change the #includes of time.h to sys/time.h (./me2/process.c,
  79.       ./me2/unixio.c, ./comserver/comserver.c).
  80.     - in comserver/compile and me2/compile, add "-lsocket -lnsl" to
  81.       the cc line so the socket code will link.
  82.     - or just turn off the compute server (in me2/config.h) and
  83.       don't worry about the socket code.  See why below.
  84.       Problem areas:
  85.         - getcwd() (called from util/canonize.c) gets an access error.
  86.       Maybe its the way my system is set up.  To get around this,
  87.       you have to run me2 setuid root.  Not a very good idea.
  88.     - Some of the termcaps don't seem right.  Use a "xterm" TERM var
  89.       for xterms, "vt100" doesn't work.
  90.     - The compute server doesn't work very well with SYS V signals -
  91.       ME2 will get a signal (from the compute server) while signals
  92.       turned off and dump (not a problem with BSD like signals).
  93.       Maybe linking in /usr/ucblib/libucb.a would work (BSD
  94.       signals).  Nope - seemed to fix the signal problem but broke
  95.       the LED lib and filename completion.  I really shouldn't use
  96.       signals for interprocess communication.
  97.  
  98.   Unixes not supported:
  99.     Apollo SysV (probably any "real" Sys V Unix)
  100.       Sockets are not supported so you need to turn off the compute
  101.         server (in config.h) and don't compile the comserver directory.
  102.       unixio.c has compile problems:
  103.         Change #include <time.h> to <sys/time.h> (why?).
  104.         termio.h doesn't seem to be supported so try USE_BSDIO.
  105.     select() needs to be updated to use the "new" structures.  I
  106.       would do this but its yet another #ifdef and I'm getting tired
  107.       of them.
  108.       Other than that, the other directories seem to compile and work.
  109.       Your best bet is just to compile under BSD.
  110.       If you fix this stuff, send the the changes so I can add them to
  111.         my copies.
  112.       
  113.  
  114.   MS-DOS:
  115.     The compile scripts won't run but should give you an idea of what
  116.       needs to be done.  See below.
  117.  
  118.     John Burnell has ported ME2 to PC-DOS:
  119.       Compiler: JPI Topspeed C  ("__TSC__").
  120.       ME2:
  121.     Use the large memory model (1 meg code and data).  Remember to
  122.       compile the libraries that way also.
  123.     Use FASTVIDEO (me2/config.h)
  124.     Build files (see me2/compile):
  125.       terminal=
  126.       termlib=
  127.       io=misc/pcio.c
  128.       keymap=misc/pckmap.c
  129.       fileio=fileio.c
  130.       process=
  131.       fastvideo=misc/pcfv.c
  132.       spam =
  133.       The util directory:
  134.     fxpand.c uses some Lattice C calls that may not be in other
  135.       Cs.  If this is the case for your compiler, check out
  136.       util/misc/ibmdir.c and util/misc/ibmdir.h to see if they
  137.       will work.  If so, move all files in  misc/ to util/ and add
  138.       them to the utils library.
  139.       Other programs:
  140.     The other programs can use the small code, large data model.
  141.     The compute server is not supported.
  142.  
  143.   OS/2 (port by John Burnell):
  144.     Compiler: JPI Topspeed C  ("__TSC__").
  145.     OS/2 1.3 on a FAT drive, not sure whether it will support HPSF
  146.       filenames (probably not since it uses the MSDOS code to parse
  147.       filenames, although it may cope with long filenames).  Certainly
  148.       it does nothing with EAs at present.
  149.     To compile it, configure the system for MSDOZ (util/os.h), except
  150.       replace the DOS files with the corresponding OS/2 ones viz:
  151.     ./util        replace ibmdir.c with os2dir.c
  152.     ./me2/misc    replace pcfile.c with os2filio.c
  153.             replace pcio.c with os2io.c
  154.             don't use pcfv.c
  155.  
  156.  
  157.   I'd like to keep a list of systems that have compiled and run ME2 and
  158.     those systems that don't.  Please send me info if your system is not
  159.     listed.  Also send bug reports/fixes.
  160.  
  161.  
  162. Installing
  163. ----------
  164.  
  165. Use the install script (as root) or:
  166. Copy me2/me2 and mc2/mc2 to /usr/local/bin or to a directory in your
  167.   PATH.
  168. Copy mutt2/*.mco to /usr/local/lib/me2 or where you specified in
  169.   config.h.  Or leave them where they are and use the ME2 environment
  170.   variable (which is what I do).  See "load" in me2/doc/me2.doc for more
  171.   about this var.
  172.  
  173. As a quick test, run me2, hit Escape x load <return> ganoi <return> and
  174. use 4 disks.  If you get the towers of hanoi, things are probably
  175. working pretty good.
  176.  
  177. Read all the documentation (see ./contents for a list).
  178.  
  179.  
  180.  
  181. Customizing
  182. -----------
  183.  
  184. Read the "Customizing me2.mut" section in me2/doc/package.doc.
  185.  
  186.  
  187. Author
  188. ------
  189. Craig Durland       (503) 750-3354
  190. 3419 SW Knollbrook, Corvallis, OR 97333
  191. craig@cv.hp.com
  192.